home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Graphics Plus
/
Graphics Plus.iso
/
general
/
modelers
/
geomview
/
source.lha
/
Geomview
/
include
/
sphere.h
< prev
next >
Wrap
C/C++ Source or Header
|
1993-02-17
|
1KB
|
34 lines
#ifndef SPHERE_H
#define SPHERE_H
typedef struct Sphere Sphere;
extern GeomClass *SphereClass;
void SphereMinMax(Sphere *sphere, HPoint3 *min, HPoint3 *max);
void SphereCenter(Sphere *sphere, HPoint3 *center);
float SphereRadius(Sphere *sphere);
void SphereSwitchSpace(Sphere *sphere, int space);
/* Makes sphere encompassing both other spheres - new sphere if dest == NULL,
* just puts results in dest otherwise */
Sphere *SphereUnion3(Sphere *a, Sphere *b, Sphere *dest);
/* points is actually a six-element array containing the points with
* the minimum and maximum x, y, and z coordinates. */
void SphereEncompassBounds(Sphere *sphere, HPoint3 *points);
/* Returns zero if didn't change sphere, non-zero if did */
int SphereAddHPt3(Sphere *sphere, HPoint3 *point, Transform T);
int SphereAddHPt3N(Sphere *sphere, HPoint3 *point, int n, Transform T);
/* Modifies sphere to surround all points */
void SphereEncompassHPt3N(Sphere *sphere, HPoint3 *point, int n, Transform T);
/* Finds points with the maximum dimensional span - spanPts is an array
* of 6 elements (2 points per axis) */
void MaxDimensionalSpan(HPoint3 *spanPts, HPoint3 *point);
void MaxDimensionalSpanN(HPoint3 *spanPts, HPoint3 *points, int n);
#endif